using System;
using System.Collections.Generic;

using ManageMoney.DataType;
using ManageMoney.DataAccess;

namespace ManageMoney.BussinessLogic
{
    public class EstadoLogic
    {
        #region Variables

        private EstadoData _estadoData;

        #endregion

        #region Constructores

        public EstadoLogic()
        {
            _estadoData = new EstadoData();
        }

        #endregion

        #region Metodos

        public EstadoType CargarPorId(string id)
        {
            _estadoData.FiltrarPorId(id);

            return _estadoData.Cargar();
        }

        public void Grabar(EstadoType estado)
        {
            _estadoData.Grabar(estado);
        }

        public void Eliminar(string id)
        {
            _estadoData.Eliminar(id);
        }

        public List<EstadoType> CargarExploradorPaginado(EstadoType registroBusqueda, int paginaActual,int cantidadMostrar,string orderBy)
        {
            if (registroBusqueda.TablaId != "") _estadoData.FiltrarPorTablaId(registroBusqueda.TablaId);
            if (registroBusqueda.Nombre != "") _estadoData.FiltrarPorNombre(registroBusqueda.Nombre);
            if (registroBusqueda.Descripcion != "") _estadoData.FiltrarPorDescripcion(registroBusqueda.Descripcion);

            return _estadoData.CargarListaVista(paginaActual,cantidadMostrar,orderBy);
        }

        #endregion
    }
}
